#include "Shm.hpp"
#include "Fifo.hpp"
int main()
{

    FileOper writerfile(PATH, FILENAME); // 创建管道文件对应，第一个参数是地址，第二个参数是文件名字
    writerfile.OpenForWrite();           // 以写的方式打开管道文件
    
                     // 关闭管道文件

    Shm shm(pathname, projid, USER);       // 进行构造操作
    char *mem = (char *)shm.VirtualAddr(); // 获取共享内存的虚拟地址
    // 我们读写共享内存，没有使用系统调用
    int index=0;
    for (char c = 'A'; c <= 'Z'; c++) // 每隔一秒往里面写入字符
    {
        sleep(1);
        //向共享内存中写入
        mem[index]=c;
        
        mem[index+1]=c;
        sleep(1);
        mem[index+2]=0;


        writerfile.Wakeup();      // 唤醒读端
    }
    writerfile.Close(); 
    return 0;
}